import axios from "axios"
import Vue from 'vue'
// 创建 axios 请求实例
const serviceAxios = axios.create({
    //baseURL: "http://192.168.110.191:8080",  //陈炎兴服务器
    //baseURL: "http://175.178.155.112:8080",  //周总服务器
    // baseURL: "http://192.168.110.144:8080", //王腾飞
    // baseURL: "http://192.168.110.244:8080", //徐昊
    // baseURL: "http://175.178.155.112:8080", // 线上
    // baseURL: process.env.VUE_APP_URL, // 基础请求地址
    timeout: 10000, // 请求超时设置
})
// 添加请求拦截器
serviceAxios.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    //把登录的token从本地会话中取出来
    if (sessionStorage.getItem("token")) {
        config.headers.Authorization = 'Bearer ' + sessionStorage.getItem("token")
    }
    return config
}, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error)
})

// 添加响应拦截器
serviceAxios.interceptors.response.use(function (response) {
    if (response.data.code && response.data.code != 200) {
        Vue.prototype.$toast(response.data.msg)
    }
    // 对响应数据做点什么
    return response
}, function (error) {
    // 对响应错误做点什么
    switch (error.response.status) {
        case 302: alert('接口重定向了！'); break
        case 400: alert('参数不正确！'); break
        case 401: alert('您未登录，或者登录已经超时，请先登录！'); break
        case 403: alert('您没有权限操作！'); break
        case 404: alert('请求地址出错'); break // 在正确域名下
        case 408: alert('请求超时！'); break
        case 409: alert('系统已存在相同数据！'); break
        case 500: alert('服务器内部错误！'); break
        case 501: alert('服务未实现！'); break
        case 502: alert('网关错误！'); break
        case 503: alert('服务不可用！'); break
        case 504: alert('服务暂时无法访问，请稍后再试！'); break
        case 505: alert('HTTP版本不受支持！'); break
        default: alert('异常问题，请联系管理员！'); break
    }
    return Promise.reject(error)
})
export default serviceAxios

